package com.ct.redisdemo;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;

public class RedisDemoZSet {

    public static void test5(Jedis jedis) {
        System.out.println("zrank");
        jedis.flushDB();
        jedis.zadd("key", 10, "a");
        jedis.zadd("key", 20, "b");
        jedis.zadd("key", 30, "c");
        jedis.zadd("key", 15, "d");
        System.out.println(jedis.zrank("key", "d"));
    }

    public static void test4(Jedis jedis) {
        System.out.println("zscore");
        jedis.flushDB();
        jedis.zadd("key", 10, "a");
        jedis.zadd("key", 20, "b");
        jedis.zadd("key", 30, "c");
        System.out.println(jedis.zscore("key", "a"));
    }

    public static void test3(Jedis jedis) {
        System.out.println("zrem");
        jedis.flushDB();
        jedis.zadd("key", 10, "a");
        jedis.zadd("key", 20, "b");
        jedis.zadd("key", 30, "c");
        System.out.println(jedis.zrem("key", "a", "b", "c"));
    }

    public static void test2(Jedis jedis) {
        System.out.println("zcard");
        jedis.flushDB();
        jedis.zadd("key", 10, "a");
        jedis.zadd("key", 20, "b");
        jedis.zadd("key", 30, "c");
        System.out.println(jedis.zcard("key"));
    }

    public static void test1(Jedis jedis) {
        System.out.println("zadd 和 zrange");
        jedis.flushDB();
        jedis.zadd("key", 10, "a");
        jedis.zadd("key", 20, "b");
        jedis.zadd("key", 30, "c");
        System.out.println(jedis.zrange("key", 0, -1));
    }

    public static void main(String[] args) {
        JedisPool jedisPool = new JedisPool("tcp://127.0.0.1:8888");
        try (Jedis jedis = jedisPool.getResource()) {
//            test1(jedis);
//            test2(jedis);
//            test3(jedis);
//            test4(jedis);
            test5(jedis);
        }
    }
}
